// 身份证是否合法
export const idCard = (rule, value, callback) => {
	let re =
		/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
	let flag = false;
	flag = re.test(value)

	if (!value) {
		callback(new Error("请输入身份证号"))
	} else if (!flag) {
		callback(new Error("身份证不合法"))
	} else {
		callback()
	}
};
// 校验手机号
export const checkTel = (rule, value, callback) => {
	let re = /^1[345678]\d{9}$/;
	let flag = false;
	flag = re.test(value)
	if (!value) {
		callback(new Error("请输入手机号码"));
	} else if (!flag) {
		callback(new Error("手机号码不合法"));
	} else {
		callback();
	}
};
// 校验邮编
export const zipCode = (rule, value, callback) => {
	let re = /^[0-9]{6}$/
	let flag = false;
	flag = re.test(value)
	if (!value) {
		callback(new Error("请输入邮编编码"))
	} else if (!flag) {
		callback(new Error("邮政编码不合法"))
	} else {
		callback();
	}
}
// 校验邮编
export const isEmail = (rule, value, callback) => {
	let re = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/
	let flag = false;
	flag = re.test(value)
	if (!value) {
		callback(new Error("请输入邮箱"))
	} else if (!flag) {
		callback(new Error("邮箱格式不正确"))
	} else {
		callback();
	}
}
// 校验邮编
export const testBiLi = (rule, value, callback) => {
	let re = /^[0-9]*$/
	let flag = false;
	flag = re.test(value)
	if (!value) {
		callback(new Error("请输入抽佣比例"))
	} else if (!flag) {
		callback(new Error("抽佣比例为0-100的正整数"))
	}  else if (value<0||value>100) {
		callback(new Error("抽佣比例为0-100的正整数"))
	} else {
		callback();
	}
}
// 校验数字
export const isNumber = (rule, value, callback) => {
	if (!value) {
		callback(new Error("请输入信息"))
	} else if (!Number.isInteger(value)) {
		callback(new Error('请输入数字值'));
	} else {
		callback();
	}

}
// 校验标题
export const bannerTitle = (rule, value, callback) => {
	if (!value) {
		callback(new Error("请输入内容"))
	} else if (value.length < 3 || value.length > 20) {
		callback(new Error('字数请保持在3~20个'));
	} else {
		callback();
	}
}
// 页面名称
export const pageTitle = (rule, value, callback) => {
	const re = /^[\u4e00-\u9fa5a-zA-Z0-9]+$/;  
	const testname = re.test(value);
	if (!value) {
		callback(new Error("请输入页面名称"))
	} else if (!testname) {
		callback(new Error("页面名称为中文/英文/数字组合"))
	} else if (value.length < 2 || value.length > 10) {
		callback(new Error('字数请保持在2~10个'));
	} else {
		callback();
	}
}
// 校验描述
export const bannerDescribe = (rule, value, callback) => {
	if (!value) {
		callback(new Error("请输入描述"))
	} else {
		//去除空格
		let newValue = value.replace(/\s*/g, "");
		if (newValue.length < 3 || newValue.length > 120) {
			callback(new Error('字数请保持在3~120个'));
		} else {
			callback();
		}
	}
}
//校验字母
export const isWord = (rule, value, callback) => {
	let re = /[A-Z]/
	if (!re.test(value)&&value!='') {
		callback(new Error('请输入大写字母'));
	} else {
		callback();
	}
}
export const isPicture = (rule, value, callback) => {

	if (value.indexOf('.jpg') == -1 && value.indexOf('.png') == -1) {
		callback(new Error('请填写正确的图片格式'));
	} else {
		callback();
	}
}

export const isContractNo = (rule, value, callback) => {
	const re = /[\u4e00-\u9fa5]/;
	const test = re.test(value);
	if (!value) {
		callback(new Error("请输入合同编号"))
	}else if(test) {
		callback(new Error(`合同编号仅包含英文字母和数字`))
	} else {
		// 切除逗号
		let arr = value.split(',')
		arr.forEach((item,index)=>{
			if(item.length>30) {
				callback(new Error(`第${index+1}个合同编号有误,请重新输入`))
				return
			}
		})
		callback()
	}
}